package com.wcity.manage.service;

import com.wcity.manage.dao.model.Module;
import com.wcity.manage.dao.model.ModuleManage;
import com.wcity.manage.dao.model.UserModule;
import org.springframework.transaction.annotation.Transactional;

/**
 * Created by jn on 2016/12/8.
 * 模块service
 */
public interface ModuleService {

    /**
     * 新增模块
     * @param module
     * @return
     */
    String addModule(Module module);

    /**
     * 修改模块
     * @param module
     * @return
     */
    String editModule(Module module);

    /**
     * 用户模块修改
     * @param module
     * @return
     */
    String editUserModule(UserModule module);

    /**
     * 用户模块管理新增
     * @param manage
     * @param moduleIds
     * @return
     */
    @Transactional
    String addModuleManage(ModuleManage manage,String moduleIds);

    /**
     * 用户模块管理修改
     * @param manage
     * @param moduleIds
     * @return
     */
    @Transactional
    String editModuleManage(ModuleManage manage,String moduleIds);

    /**
     * 分配模块
     * @param userId
     * @param moduleIds
     * @return
     */
    @Transactional
    String allocateModule(int userId,String moduleIds);

    /**
     * 获取自定义模块
     * @param userId
     * @return
     */
    Object moduleList(int userId);

}
